SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SP_TDDISP_CCOS_I01]
/*------------------------------------------------------------*/
/*----- Empresa          : OFISIS S.A.                    ----*/
/*----- Cliente          : OFISIS S.A.                    ----*/
/*----- Sistema          : Tesoreria	                  ----*/
/*----- Modulo           : Empresa                        ----*/
/*----- Programa         : Distribucion Auxiliares        ----*/
/*-----                    Orden Servicio                 ----*/
/*----- Script           : TDDISP_CCOS                    ----*/
/*----- Nombre           : SP_TDDISP_CCOS_I01             ----*/
/*----- Desarrollado por : Javier Flores A.               ----*/
/*----- Fecha            : 06/02/2002                     ----*/
/*----- Base de Datos    : MS SQL Server                  ----*/
/*----- Version          : 7.0                            ----*/
/*----- Invoca a SP      : 			          ----*/
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*----- Modificado 1 por : 			          ----*/
/*----- Fecha Modifica   : 		                  ----*/
/*----- Detalle Modifica : 			          ----*/
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*----- Drop proc SP_TDDISP_CCOS_I01                      ----*/
/*----- Grant execute on SP_TDDISP_CCOS_I01 to public     ----*/
/*----- SP_TDDISP_CCOS_I01 '01', '2002', '02'             ----*/
/*------------------------------------------------------------*/
@ISCO_EMPR TD_VC_003,
@INNU_ANNO TD_IN_001,
@INNU_MESE TD_IN_001
	As
DECLARE

    @CSCO_CNTA_EMPR   TD_VC_010, 
    @CSTI_AUXI_EMPR   TD_VC_001, 
    @CSCO_CENT_COST   TD_VC_020, 
    @CSCO_ORDE_SERV   TD_VC_020,
    @CNIM_TOTA        TD_NU_016_004, 
    @CNPO_DIS1        TD_NU_009_004,
    @CSTI_AUXI_DEST   TD_VC_001, 
    @CSCO_AUXI_DEST   TD_VC_020, 
    @CNPO_DIS2        TD_NU_009_004,
    @CSCO_ORDE_DEST   TD_VC_020, 
    @CNPO_DIS3        TD_NU_009_004,
    @VNNU_FILA        TD_IN_001,
    @VNNU_CORR        TD_IN_001,
    @CSCO_PROV        TD_VC_020, 
    @CSCO_TIPO_DOCU   TD_VC_003, 
    @CSNU_DOCU_PROV   TD_VC_020,
    @VNFE_0001        TD_IN_001,
    @VNFE_0002        TD_IN_001,
    @VNFE_0003        TD_IN_001,
    @VNIM_DIST        TD_NU_016_004,
    @VNPC_DIST        TD_NU_009_004

  BEGIN TRAN SP_TDDISP_CCOS_I01

  /* Que Tenga Distribuci¸n de Auxiliares y/o Distribuci¸n C.Costo */

  Declare CU_TDDISP_CCOS_I01_1 Cursor
  For
  Select Distinct T3.CO_PROV, T3.CO_TIPO_DOCU, T3.NU_DOCU_PROV, t2.CO_CNTA_EMPR, t2.TI_AUXI_EMPR, 
         t2.CO_CENT_COST, t2.CO_ORDE_SERV, (t3.IM_BRUT_AFEC + t3.IM_BRUT_INAF + t3.IM_GAFI + t3.IM_MORA + t3.IM_FLET ) 
         - t3.IM_DCT1 - t3.IM_DCT2, t2.PO_DIST
  From   TDDISP_CCOS t2, TMDOCU_PROV t3
  Where  t2.CO_EMPR = @ISCO_EMPR
         And YEAR(t3.FE_REGI_COMP) = @INNU_ANNO
         And MONTH (t3.FE_REGI_COMP) = @INNU_MESE
         And Exists (Select T4.CO_EMPR From TTAUXI_DIST t4
                      Where  T4.CO_EMPR = T2.CO_EMPR
                      And    t4.NU_ANNO = @INNU_ANNO 
                      And    t4.NU_MESE = @INNU_MESE
	              And    t2.TI_AUXI_EMPR = t4.TI_AUXI_ORIG
	 	      And    t2.CO_CENT_COST = t4.CO_AUXI_ORIG) and	 
         t2.CO_EMPR = t3.CO_EMPR and
         t2.CO_PROV = t3.CO_PROV and
         t2.CO_TIPO_DOCU = t3.CO_TIPO_DOCU and
         t2.NU_DOCU_PROV = t3.NU_DOCU_PROV          
 
  Open CU_TDDISP_CCOS_I01_1
  Fetch  CU_TDDISP_CCOS_I01_1 INTO  @CSCO_PROV, @CSCO_TIPO_DOCU, @CSNU_DOCU_PROV, @CSCO_CNTA_EMPR, 

                                    @CSTI_AUXI_EMPR, @CSCO_CENT_COST, @CSCO_ORDE_SERV, 
                                    @CNIM_TOTA, @CNPO_DIS1

  Select @VNFE_0001  = @@FETCH_STATUS

  While (@VNFE_0001 = 0)
    Begin
      If (@VNFE_0001 < 0)
         Begin
 	     Close CU_TDDISP_CCOS_I01_1
	     Deallocate CU_TDDISP_CCOS_I01_1
	     Return
         End		

         /* Iniciando la Distribuci¸n del Auxiliar */

         Declare CU_TDDISP_CCOS_I01_2 Cursor 
         For
         Select TI_AUXI_DEST, CO_AUXI_DEST, PO_DIST
         From   TTAUXI_DIST
         Where  CO_EMPR = @ISCO_EMPR
         And    NU_ANNO = @INNU_ANNO
         And    NU_MESE = @INNU_MESE
         And    TI_AUXI_ORIG = @CSTI_AUXI_EMPR                                   
	 And    CO_AUXI_ORIG = @CSCO_CENT_COST

	 Open CU_TDDISP_CCOS_I01_2
   	 Fetch  CU_TDDISP_CCOS_I01_2 INTO @CSTI_AUXI_DEST, @CSCO_AUXI_DEST, @CNPO_DIS2

	 Select @VNFE_0002  = @@FETCH_STATUS

	 While (@VNFE_0002 = 0)
    	   Begin
      	     If (@VNFE_0002 < 0)
         	 Begin
 	           Close CU_TDDISP_CCOS_I01_2
	           Deallocate CU_TDDISP_CCOS_I01_2
	           Return
                 End		

             /* Iniciando la Distribuci¸n de los Auxiliares si no hubiese Orden Servicio */

             Select @VNNU_FILA = 0

             Select @VNNU_FILA = Isnull(count(CO_EMPR),0)
             From   TTORDE_DIST
             Where  CO_EMPR = @ISCO_EMPR
             And    NU_ANNO = @INNU_ANNO
             And    NU_MESE = @INNU_MESE
	     And    CO_ORDE_ORIG = @CSCO_ORDE_SERV

             If @VNNU_FILA = 0
                Begin
                  Select @VNIM_DIST = (((@CNIM_TOTA*@CNPO_DIS1)/100)*@CNPO_DIS2)/100
                  Select @VNPC_DIST = (@VNIM_DIST * 100)/@CNIM_TOTA

                  Select @VNNU_CORR = Isnull(Max(NU_CORR),0) + 1
  	          From   TDDISP_CCOS
                  Where  CO_EMPR = @ISCO_EMPR
	          And    CO_PROV = @CSCO_PROV
	          And    CO_TIPO_DOCU  = @CSCO_TIPO_DOCU
	          And    NU_DOCU_PROV = @CSNU_DOCU_PROV

                  Insert into TDDISP_CCOS (CO_EMPR, CO_PROV, CO_TIPO_DOCU, NU_DOCU_PROV,
	          NU_CORR, CO_CENT_COST, CO_CNTA_EMPR,  ST_DIST,
	          PO_DIST, IM_DIST, CO_ORDE_SERV, TI_AUXI_EMPR)
		  
	          Values (@ISCO_EMPR, @CSCO_PROV, @CSCO_TIPO_DOCU,
	          @CSNU_DOCU_PROV, @VNNU_CORR, @CSCO_AUXI_DEST,
	          @CSCO_CNTA_EMPR, 'P',  @VNPC_DIST,  @VNIM_DIST,
                  @CSCO_ORDE_SERV, @CSTI_AUXI_DEST)
                End

             Declare CU_TDDISP_CCOS_I01_3 Cursor 
             For
             Select CO_ORDE_DEST, PO_DIST
             From TTORDE_DIST
             Where CO_EMPR = @ISCO_EMPR
             And   NU_ANNO = @INNU_ANNO
             And   NU_MESE = @INNU_MESE
	     And   CO_ORDE_ORIG = @CSCO_ORDE_SERV

             Open CU_TDDISP_CCOS_I01_3
   	     Fetch  CU_TDDISP_CCOS_I01_3 INTO @CSCO_ORDE_DEST, @CNPO_DIS3

	     Select @VNFE_0003  = @@FETCH_STATUS

             While (@VNFE_0003 = 0)
    	        Begin
      	          If (@VNFE_0003 < 0)
         	      Begin
 	                Close CU_TDDISP_CCOS_I01_3
	                Deallocate CU_TDDISP_CCOS_I01_3
	                Return
                      End		
                  
                  Select @VNIM_DIST = 0
                  Select @VNIM_DIST = (((((@CNIM_TOTA*@CNPO_DIS1)/100)*@CNPO_DIS2)/100)*@CNPO_DIS3)/100                  

                  Select @VNPC_DIST = (@VNIM_DIST * 100)/@CNIM_TOTA

		  Select @VNNU_CORR = Isnull(Max(NU_CORR),0) + 1
		  From 	TDDISP_CCOS
                  Where CO_EMPR = @ISCO_EMPR
		  And CO_PROV = @CSCO_PROV
		  And CO_TIPO_DOCU  = @CSCO_TIPO_DOCU
		  And NU_DOCU_PROV = @CSNU_DOCU_PROV

		  Insert into TDDISP_CCOS (CO_EMPR, CO_PROV, CO_TIPO_DOCU, NU_DOCU_PROV,
		
  NU_CORR, CO_CENT_COST, CO_CNTA_EMPR,  ST_DIST,
		  PO_DIST, IM_DIST, CO_ORDE_SERV, TI_AUXI_EMPR)
		  
	          Values (@ISCO_EMPR, @CSCO_PROV, @CSCO_TIPO_DOCU,
		  @CSNU_DOCU_PROV, @VNNU_CORR, @CSCO_AUXI_DEST,
		  @CSCO_CNTA_EMPR, 'P',  @VNPC_DIST,  @VNIM_DIST,
		  @CSCO_ORDE_DEST, @CSTI_AUXI_DEST)

                Fetch  CU_TDDISP_CCOS_I01_3 INTO @CSCO_ORDE_DEST, @CNPO_DIS3

Select @VNFE_0003= @@FETCH_STATUS
               End

             Close CU_TDDISP_CCOS_I01_3
             Deallocate CU_TDDISP_CCOS_I01_3

         Fetch  CU_TDDISP_CCOS_I01_2 INTO @CSTI_AUXI_DEST, @CSCO_AUXI_DEST, @CNPO_DIS2

         Select @VNFE_0002 = @@FETCH_STATUS
      End

      Close CU_TDDISP_CCOS_I01_2
      Deallocate CU_TDDISP_CCOS_I01_2

      Fetch  CU_TDDISP_CCOS_I01_1 INTO @CSCO_PROV, @CSCO_TIPO_DOCU, @CSNU_DOCU_PROV, 
                                       @CSCO_CNTA_EMPR, @CSTI_AUXI_EMPR, @CSCO_CENT_COST,
                                       @CSCO_ORDE_SERV, @CNIM_TOTA, @CNPO_DIS1

      Select @VNFE_0001 = @@FETCH_STATUS
    End

    Close CU_TDDISP_CCOS_I01_1
    Deallocate CU_TDDISP_CCOS_I01_1

    /* Insertando s¸lo los que llevan auxiliares y/o ordenes servicios*/

    INSERT INTO TDDISP_CBAK (CO_EMPR, CO_PROV, CO_TIPO_DOCU, NU_DOCU_PROV, NU_CORR, TI_AUXI_EMPR,
                             CO_CENT_COST, CO_CNTA_EMPR, CO_ORDE_SERV, ST_DIST, PO_DIST,
                             IM_BRUT_INAF, IM_BRUT_AFEC,IM_DCT1, IM_DCT2, IM_IMP1, IM_IMP2, IM_IMP3,
                             IM_TOTA, IM_MORA, IM_FLET, IM_GAFI)

    SELECT t2.CO_EMPR, t2.CO_PROV, t2.CO_TIPO_DOCU, t2.NU_DOCU_PROV, t2.NU_CORR, t2.TI_AUXI_EMPR,
           t2.CO_CENT_COST, t2.CO_CNTA_EMPR, t2.CO_ORDE_SERV, t2.ST_DIST, t2.PO_DIST,
           t3.IM_BRUT_INAF, t3.IM_BRUT_AFEC, t3.IM_DCT1, t3.IM_DCT2, t3.IM_IMP1, t3.IM_IMP2, t3.IM_IMP3,
           t3.IM_TOTA, t3.IM_MORA, t3.IM_FLET, t3.IM_GAFI
    From TDDISP_CCOS t2, TMDOCU_PROV t3
    Where  t2.CO_EMPR = @ISCO_EMPR
    And t2.CO_EMPR = t3.CO_EMPR 
    And t2.CO_PROV = t3.CO_PROV and
         t2.CO_TIPO_DOCU = t3.CO_TIPO_DOCU and
         t2.NU_DOCU_PROV = t3.NU_DOCU_PROV 
         AND YEAR(t3.FE_REGI_COMP) = @INNU_ANNO
         And MONTH (t3.FE_REGI_COMP) = @INNU_MESE
         And Exists (Select T4.CO_EMPR From TTAUXI_DIST t4
                      Where  T4.CO_EMPR = T2.CO_EMPR
                      And    t4.NU_ANNO = @INNU_ANNO 
                      And    t4.NU_MESE = @INNU_MESE
                      And    t2.TI_AUXI_EMPR = t4.TI_AUXI_ORIG
                      And    t2.CO_CENT_COST = t4.CO_AUXI_ORIG)    


    /* Eliminando los que llevan auxiliares y/o ordenes servicios*/

    DELETE TDDISP_CCOS  FROM TDDISP_CCOS  t2 
    Where  t2.CO_EMPR = @ISCO_EMPR
    And EXISTS (SELECT * FROM TMDOCU_PROV t3
	 WHERE t2.CO_EMPR = t3.CO_EMPR and
         t2.CO_PROV = t3.CO_PROV and
         t2.CO_TIPO_DOCU = t3.CO_TIPO_DOCU and
         t2.NU_DOCU_PROV = t3.NU_DOCU_PROV 
         AND YEAR(t3.FE_REGI_COMP) = @INNU_ANNO
         And MONTH (t3.FE_REGI_COMP) = @INNU_MESE )        
         And Exists (Select T4.CO_EMPR From TTAUXI_DIST t4
                      Where  T4.CO_EMPR = T2.CO_EMPR
                      And    t4.NU_ANNO = @INNU_ANNO 
                      And    t4.NU_MESE = @INNU_MESE
	              And    t2.TI_AUXI_EMPR = t4.TI_AUXI_ORIG
	 	      And    t2.CO_CENT_COST = t4.CO_AUXI_ORIG)

    /* S¸lo Aquellas que tienen Distribuci¸n de Orden Servicio */

     Declare CU_TDDISP_CCOS_I01_1 Cursor
     For
     Select Distinct T3.CO_PROV, T3.CO_TIPO_DOCU, T3.NU_DOCU_PROV, t2.CO_CNTA_EMPR, t2.TI_AUXI_EMPR, 
          t2.CO_CENT_COST, t2.CO_ORDE_SERV, (t3.IM_BRUT_AFEC + t3.IM_BRUT_INAF + t3.IM_GAFI + t3.IM_MORA + t3.IM_FLET ) 
         - t3.IM_DCT1 - t3.IM_DCT2, t2.PO_DIST
     From   TDDISP_CCOS t2, TMDOCU_PROV t3
     Where  t2.CO_EMPR = @ISCO_EMPR
     And YEAR(t3.FE_REGI_COMP) = @INNU_ANNO
     And MONTH (t3.FE_REGI_COMP) = @INNU_MESE
     And Not Exists (Select T4.CO_EMPR From TTAUXI_DIST t4
                 Where  T4.CO_EMPR = T2.CO_EMPR
                 And    t4.NU_ANNO = @INNU_ANNO 
                 And    t4.NU_MESE = @INNU_MESE
	         And    t2.TI_AUXI_EMPR = t4.TI_AUXI_ORIG
	         And    t2.CO_CENT_COST = t4.CO_AUXI_ORIG) 
     And Exists (Select T1.CO_EMPR From TTORDE_DIST t1

                                 Where  T1.CO_EMPR = T2.CO_EMPR
                                 And    t1.NU_ANNO = @INNU_ANNO 
                                 And    t1.NU_MESE = @INNU_MESE
	                         And    t2.CO_ORDE_SERV = t1.CO_ORDE_ORIG )  and
     t2.CO_EMPR = t3.CO_EMPR and
     t2.CO_PROV = t3.CO_PROV and
     t2.CO_TIPO_DOCU = t3.CO_TIPO_DOCU and
     t2.NU_DOCU_PROV = t3.NU_DOCU_PROV          
 
     Open CU_TDDISP_CCOS_I01_1
     Fetch  CU_TDDISP_CCOS_I01_1 INTO  @CSCO_PROV, @CSCO_TIPO_DOCU, @CSNU_DOCU_PROV, @CSCO_CNTA_EMPR, 
                                       @CSTI_AUXI_EMPR, @CSCO_CENT_COST, @CSCO_ORDE_SERV, 
                                       @CNIM_TOTA, @CNPO_DIS1

     Select @VNFE_0001  = @@FETCH_STATUS

     While (@VNFE_0001 = 0)
       Begin
         If (@VNFE_0001 < 0)
            Begin
 	      Close CU_TDDISP_CCOS_I01_1
	      Deallocate CU_TDDISP_CCOS_I01_1
	      Return
            End		

             Declare CU_TDDISP_CCOS_I01_3 Cursor 
             For
             Select CO_ORDE_DEST, PO_DIST
             From TTORDE_DIST
             Where CO_EMPR = @ISCO_EMPR
             And   NU_ANNO = @INNU_ANNO
             And   NU_MESE = @INNU_MESE
	     And   CO_ORDE_ORIG = @CSCO_ORDE_SERV

             Open CU_TDDISP_CCOS_I01_3
   	     Fetch  CU_TDDISP_CCOS_I01_3 INTO @CSCO_ORDE_DEST, @CNPO_DIS2

	     Select @VNFE_0003  = @@FETCH_STATUS

             While (@VNFE_0003 = 0)
    	        Begin
      	          If (@VNFE_0003 < 0)
         	      Begin
 	                Close CU_TDDISP_CCOS_I01_3
	                Deallocate CU_TDDISP_CCOS_I01_3
	                Return
                      End		
                  
                  Select @VNIM_DIST = 0
                  Select @VNIM_DIST = (((@CNIM_TOTA*@CNPO_DIS1)/100)*@CNPO_DIS2)/100

                  Select @VNPC_DIST = (@VNIM_DIST * 100)/@CNIM_TOTA

		  Select @VNNU_CORR = Isnull(Max(NU_CORR),0) + 1
		  From 	TDDISP_CCOS
                  Where CO_EMPR = @ISCO_EMPR
		  And CO_PROV = @CSCO_PROV
		  And CO_TIPO_DOCU  = @CSCO_TIPO_DOCU
		  And NU_DOCU_PROV = @CSNU_DOCU_PROV

		  Insert into TDDISP_CCOS (CO_EMPR, CO_PROV, CO_TIPO_DOCU, NU_DOCU_PROV,
		  NU_CORR, CO_CENT_COST, CO_CNTA_EMPR,  ST_DIST,
		  PO_DIST, IM_DIST, CO_ORDE_SERV, TI_AUXI_EMPR)
		  
	          Values (@ISCO_EMPR, @CSCO_PROV, @CSCO_TIPO_DOCU,
		  @CSNU_DOCU_PROV, @VNNU_CORR, @CSCO_CENT_COST,
		  @CSCO_CNTA_EMPR, 'P',  @VNPC_DIST,  @VNIM_DIST,
		  @CSCO_ORDE_DEST, @CSTI_AUXI_EMPR)

                Fetch  CU_TDDISP_CCOS_I01_3 INTO @CSCO_ORDE_DEST, @CNPO_DIS2

                Select @VNFE_0003= @@FETCH_STATUS
            End

            Close CU_TDDISP_CCOS_I01_3
            Deallocate CU_TDDISP_CCOS_I01_3

           Fetch  CU_TDDISP_CCOS_I01_1 INTO  @CSCO_PROV, @CSCO_TIPO_DOCU, @CSNU_DOCU_PROV, @CSCO_CNTA_EMPR, 
                                             @CSTI_AUXI_EMPR, @CSCO_CENT_COST, @CSCO_ORDE_SERV, 
                                             @CNIM_TOTA, @CNPO_DIS1
          Select @VNFE_0001  = @@FETCH_STATUS
       End

       Close CU_TDDISP_CCOS_I01_1
       Deallocate CU_TDDISP_CCOS_I01_1

    /* Insertando s¸lo los que llevan auxiliares y/o ordenes servicios*/ 

      INSERT INTO TDDISP_CBAK (CO_EMPR, CO_PROV, CO_TIPO_DOCU, NU_DOCU_PROV, NU_CORR, TI_AUXI_EMPR,
                             CO_CENT_COST, CO_CNTA_EMPR, CO_ORDE_SERV, ST_DIST, PO_DIST,
                             IM_BRUT_INAF, IM_BRUT_AFEC,IM_DCT1, IM_DCT2, IM_IMP1, IM_IMP2, IM_IMP3,
           
                  IM_TOTA, IM_MORA, IM_FLET, IM_GAFI)

      Select t2.CO_EMPR, t2.CO_PROV, t2.CO_TIPO_DOCU, t2.NU_DOCU_PROV, t2.NU_CORR, t2.TI_AUXI_EMPR,
             t2.CO_CENT_COST, t2.CO_CNTA_EMPR, t2.CO_ORDE_SERV, t2.ST_DIST, t2.PO_DIST,
             t3.IM_BRUT_INAF, t3.IM_BRUT_AFEC, t3.IM_DCT1, t3.IM_DCT2, t3.IM_IMP1, t3.IM_IMP2, t3.IM_IMP3,
             t3.IM_TOTA, IM_MORA, t3.IM_FLET, t3.IM_GAFI

      FROM TDDISP_CCOS  t2 , TMDOCU_PROV t3
      Where  t2.CO_EMPR = @ISCO_EMPR
      And t2.CO_EMPR = t3.CO_EMPR
      And t2.CO_PROV = t3.CO_PROV
      And t2.CO_TIPO_DOCU = t3.CO_TIPO_DOCU
      And t2.NU_DOCU_PROV = t3.NU_DOCU_PROV
      And YEAR(t3.FE_REGI_COMP) = @INNU_ANNO
      And MONTH (t3.FE_REGI_COMP) = @INNU_MESE
      And Not Exists (Select T4.CO_EMPR From TTAUXI_DIST t4
                      Where  T4.CO_EMPR = T2.CO_EMPR
                      And    t4.NU_ANNO = @INNU_ANNO 
                      And    t4.NU_MESE = @INNU_MESE
                      And    t2.TI_AUXI_EMPR = t4.TI_AUXI_ORIG
                      And    t2.CO_CENT_COST = t4.CO_AUXI_ORIG) 
      And Exists (Select T1.CO_EMPR From TTORDE_DIST t1
                  Where  T1.CO_EMPR = T2.CO_EMPR
                  And    t1.NU_ANNO = @INNU_ANNO 
                  And    t1.NU_MESE = @INNU_MESE
	          And    t2.CO_ORDE_SERV = t1.CO_ORDE_ORIG ) 

    /* Eliminando los que llevan auxiliares y/o ordenes servicios*/

      DELETE TDDISP_CCOS  FROM TDDISP_CCOS  t2 
      Where  t2.CO_EMPR = @ISCO_EMPR
      And EXISTS (SELECT * FROM TMDOCU_PROV t3
	          WHERE t2.CO_EMPR = t3.CO_EMPR and
                  t2.CO_PROV = t3.CO_PROV and
                  t2.CO_TIPO_DOCU = t3.CO_TIPO_DOCU and
                  t2.NU_DOCU_PROV = t3.NU_DOCU_PROV And
                  YEAR(t3.FE_REGI_COMP) = @INNU_ANNO And
                  MONTH (t3.FE_REGI_COMP) = @INNU_MESE )        
      And Not Exists (Select T4.CO_EMPR From TTAUXI_DIST t4
                      Where  T4.CO_EMPR = T2.CO_EMPR
                      And    t4.NU_ANNO = @INNU_ANNO 
                      And    t4.NU_MESE = @INNU_MESE
	              And    t2.TI_AUXI_EMPR = t4.TI_AUXI_ORIG
	              And    t2.CO_CENT_COST = t4.CO_AUXI_ORIG) 
      And Exists (Select T1.CO_EMPR From TTORDE_DIST t1
                  Where  T1.CO_EMPR = T2.CO_EMPR
                  And    t1.NU_ANNO = @INNU_ANNO 
                  And    t1.NU_MESE = @INNU_MESE
	          And    t2.CO_ORDE_SERV = t1.CO_ORDE_ORIG ) 
   Commit

/* ---------------------------- Fin del Reporte --------------------------  */


GO
